In [1]:
import matplotlib.pyplot as plt
import plotly.express as px
import pandas as pd
import numpy as np
import seaborn as sns
from datetime import datetime,tzinfo
import pytz
In [2]:
agri_data = pd.read_csv("India Agriculture Crop Production.csv")
agri_data.dropna(inplace = True)
agri_data
Out[2]:
| State | District | Crop | Year | Season | Area | Area Units | Production | Production Units | Yield | |
|---|---|---|---|---|---|---|---|---|---|---|
| 0 | Andaman and Nicobar Islands | NICOBARS | Arecanut | 2001-02 | Kharif | 1254.0 | Hectare | 2061.0 | Tonnes | 1.643541 |
| 1 | Andaman and Nicobar Islands | NICOBARS | Arecanut | 2002-03 | Whole Year | 1258.0 | Hectare | 2083.0 | Tonnes | 1.655803 |
| 2 | Andaman and Nicobar Islands | NICOBARS | Arecanut | 2003-04 | Whole Year | 1261.0 | Hectare | 1525.0 | Tonnes | 1.209358 |
| 3 | Andaman and Nicobar Islands | NORTH AND MIDDLE ANDAMAN | Arecanut | 2001-02 | Kharif | 3100.0 | Hectare | 5239.0 | Tonnes | 1.690000 |
| 4 | Andaman and Nicobar Islands | SOUTH ANDAMANS | Arecanut | 2002-03 | Whole Year | 3105.0 | Hectare | 5267.0 | Tonnes | 1.696296 |
| ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
| 345370 | West Bengal | PURBA BARDHAMAN | Wheat | 2000-01 | Rabi | 6310.0 | Hectare | 15280.0 | Tonnes | 2.421553 |
| 345371 | West Bengal | PURULIA | Wheat | 1997-98 | Rabi | 1895.0 | Hectare | 2760.0 | Tonnes | 1.456464 |
| 345372 | West Bengal | PURULIA | Wheat | 1998-99 | Rabi | 3736.0 | Hectare | 5530.0 | Tonnes | 1.480193 |
| 345373 | West Bengal | PURULIA | Wheat | 1999-00 | Rabi | 2752.0 | Hectare | 6928.0 | Tonnes | 2.517442 |
| 345374 | West Bengal | PURULIA | Wheat | 2000-01 | Rabi | 2979.0 | Hectare | 7430.0 | Tonnes | 2.494126 |
340414 rows × 10 columns
In [3]:
plt.figure(figsize=(16,6))
sns.lineplot(data=agri_data);
C:\Users\sreya\anaconda3\Lib\site-packages\seaborn\_oldcore.py:1119: FutureWarning: use_inf_as_na option is deprecated and will be removed in a future version. Convert inf values to NaN before operating instead.
with pd.option_context('mode.use_inf_as_na', True):
C:\Users\sreya\anaconda3\Lib\site-packages\seaborn\_oldcore.py:1119: FutureWarning: use_inf_as_na option is deprecated and will be removed in a future version. Convert inf values to NaN before operating instead.
with pd.option_context('mode.use_inf_as_na', True):
In [4]:
round(pd.pivot_table(agri_data, index = ["Year"], values=["Yield"], columns=["State"]),2)
Out[4]:
| Yield | |||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| State | Andaman and Nicobar Islands | Andhra Pradesh | Arunachal Pradesh | Assam | Bihar | Chandigarh | Chhattisgarh | Dadra and Nagar Haveli | Daman and Diu | Delhi | ... | Puducherry | Punjab | Rajasthan | Sikkim | Tamil Nadu | Telangana | Tripura | Uttar Pradesh | Uttarakhand | West Bengal |
| Year | |||||||||||||||||||||
| 1997-98 | NaN | 3.86 | 2.39 | 215.52 | 3.95 | NaN | NaN | NaN | NaN | NaN | ... | NaN | 6.91 | 4.44 | 1.08 | NaN | NaN | NaN | 3.97 | NaN | 470.77 |
| 1998-99 | NaN | 4.08 | 2.65 | 225.00 | 3.57 | 6.13 | NaN | 23.26 | 1.25 | 7.59 | ... | 9.13 | 6.87 | 2.87 | 0.88 | 11.33 | NaN | 3.69 | 4.18 | NaN | 438.00 |
| 1999-00 | NaN | 4.08 | 3.39 | 210.38 | 3.97 | 5.14 | NaN | 28.76 | 1.16 | 6.70 | ... | 1054.74 | 7.20 | 2.47 | 1.15 | 9.59 | NaN | 10.76 | 4.91 | NaN | 424.10 |
| 2000-01 | 337.64 | 197.46 | 3.61 | 214.88 | 3.57 | 5.75 | 2.12 | 30.07 | 1.60 | 6.94 | ... | 908.31 | 7.90 | 2.32 | 0.97 | 8.91 | NaN | 11.05 | 4.06 | 3.72 | 454.37 |
| 2001-02 | 449.48 | 191.77 | 3.79 | 249.13 | 3.91 | 6.48 | 2.18 | 21.13 | 0.76 | 7.90 | ... | 958.40 | 8.52 | 2.55 | 0.96 | 10.13 | NaN | 11.21 | 4.33 | 3.53 | 414.49 |
| 2002-03 | 398.34 | 192.12 | 3.80 | 225.14 | 3.49 | 9.41 | 2.04 | 21.76 | 0.95 | 8.10 | ... | 1313.50 | 6.72 | 2.29 | 1.34 | 339.57 | NaN | 8.49 | 4.70 | 3.55 | 387.56 |
| 2003-04 | 397.05 | 191.36 | 3.72 | 225.73 | 3.43 | 9.82 | 2.11 | 20.25 | 1.94 | 8.86 | ... | 1237.29 | 6.16 | 2.85 | 1.38 | 303.56 | NaN | 9.02 | 4.58 | 3.36 | 403.53 |
| 2004-05 | 407.79 | 217.70 | 3.71 | 2.92 | 3.13 | 9.20 | 1.94 | 18.49 | 2.09 | 9.38 | ... | 1119.33 | 6.65 | 2.87 | 1.46 | 423.49 | NaN | 3.86 | 6.46 | 3.31 | 443.93 |
| 2005-06 | 399.85 | 168.07 | 3.62 | 237.46 | 3.32 | 9.32 | 1.95 | 18.64 | 1.16 | 8.26 | ... | 1192.91 | 6.77 | 3.15 | 2.53 | 464.64 | NaN | 3.84 | 6.86 | 3.67 | 399.43 |
| 2006-07 | 342.55 | 255.00 | 3.71 | 202.35 | 1.58 | 8.93 | 2.09 | 19.77 | 1.61 | 10.00 | ... | 13.22 | 2.03 | 3.33 | 1.48 | 529.50 | NaN | 3.90 | 5.84 | 3.19 | 448.23 |
| 2007-08 | 159.79 | 5.30 | 3.74 | 220.72 | 3.43 | 9.23 | 2.08 | 1.10 | 1.41 | 12.53 | ... | 735.91 | 2.27 | 2.98 | 1.22 | 517.47 | NaN | 3.86 | 4.92 | 3.24 | 366.35 |
| 2008-09 | 86.35 | 200.22 | 3.76 | 244.20 | 3.59 | 9.82 | 1.88 | 1.10 | 1.35 | 12.03 | ... | 756.68 | 2.26 | 3.10 | 1.07 | 598.24 | NaN | 4.23 | 4.99 | 3.04 | 373.70 |
| 2009-10 | 82.01 | 214.18 | 3.97 | 265.19 | 3.15 | 9.89 | 2.74 | 0.93 | 1.00 | 40.11 | ... | 731.43 | 2.64 | 3.41 | 1.18 | 564.44 | NaN | 4.00 | 5.88 | 2.96 | 438.89 |
| 2010-11 | 228.23 | 247.54 | 4.09 | 226.07 | 3.90 | 10.11 | 1.98 | 5.28 | 1.26 | 47.83 | ... | 753.05 | 2.35 | 3.66 | 1.58 | 9.76 | NaN | 4.07 | 5.13 | 3.15 | 431.82 |
| 2011-12 | 268.82 | 269.87 | 4.12 | 233.07 | 1.96 | 9.18 | 2.29 | 5.41 | 1.10 | 47.44 | ... | 683.97 | 8.98 | 3.76 | 1.08 | 450.19 | NaN | 3.98 | 5.86 | 3.62 | 445.47 |
| 2012-13 | 309.72 | 357.90 | 4.19 | 198.38 | 4.10 | 11.73 | 1.58 | 5.46 | 1.25 | 14.92 | ... | 792.92 | 8.46 | 3.89 | 1.11 | 8.95 | NaN | 4.14 | 6.19 | 3.45 | 449.91 |
| 2013-14 | 294.39 | 316.47 | 4.33 | 207.41 | 4.05 | 11.41 | 2.46 | 1.32 | 1.57 | 14.92 | ... | 551.77 | 9.49 | 3.89 | 1.13 | 283.03 | 101.68 | 4.26 | 6.01 | 3.22 | 455.54 |
| 2014-15 | 296.59 | 278.99 | 4.46 | 216.43 | 4.47 | 10.64 | 2.41 | 1.33 | 1.84 | 7.32 | ... | 803.80 | 8.81 | 3.82 | 1.13 | 309.27 | 126.74 | 4.34 | 5.94 | 3.52 | 463.63 |
| 2015-16 | 319.56 | 269.59 | 4.58 | 246.30 | 4.46 | 9.45 | 1.85 | 6.97 | 1.24 | 2.94 | ... | 913.75 | 8.78 | 4.22 | 1.14 | 341.12 | 5.68 | 3.87 | 5.92 | 3.18 | 454.87 |
| 2016-17 | 344.99 | 288.36 | 2.58 | 274.18 | 4.95 | 4.97 | 1.87 | 5.79 | 1.31 | 2.92 | ... | 738.05 | 8.94 | 4.14 | 1.14 | 321.27 | 5.73 | 3.51 | 6.44 | 3.35 | 401.23 |
| 2017-18 | 617.88 | 305.36 | 2.58 | 286.26 | 4.88 | 5.10 | 1.64 | 6.79 | 1.28 | 2.58 | ... | 756.58 | 8.84 | 4.98 | 1.15 | 246.41 | 7.62 | 3.41 | 6.98 | 3.98 | 453.92 |
| 2018-19 | 392.01 | 371.38 | 2.69 | 272.64 | 5.14 | 5.15 | 1.77 | 7.36 | 1.29 | 2.91 | ... | 537.85 | 8.12 | 4.15 | 1.15 | 298.44 | 7.12 | 3.43 | 7.20 | 4.00 | 462.30 |
| 2019-20 | 376.00 | 385.10 | 2.71 | 279.95 | 5.03 | 4.33 | 2.18 | NaN | NaN | 3.03 | ... | 639.61 | 9.22 | 3.93 | 1.16 | 253.91 | 7.20 | 3.38 | 7.29 | 4.13 | 460.62 |
| 2020-21 | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | ... | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | 4.14 | NaN |
24 rows × 36 columns
In [5]:
fig=px.line(agri_data,x="Year",y="Yield",color="State",title="Indian Agriculture States",markers=True)
fig.show()